import pandas as pd

# 读取文件

df = pd.read_excel(r'C:\Users\admin\Desktop\nn\student.xlsx')


print('学生信息内容：')
print(df.to_csv(sep='\t', na_rep='nan'))

# 按性别统计学生人数
gender_count = df['性别'].value_counts()
print('按性别统计学生人数：')
print(gender_count)

# 按年龄段统计学生人数
# 定义年龄段区间
bins = [0, 18, 22, 25, 30, 100]
# 定义年龄段标签
labels = ['18岁以下', '19 - 22岁', '23 - 25岁', '26 - 30岁', '31岁以上']
df['年龄段'] = pd.cut(df['年龄'], bins=bins, labels=labels, right=False)
age_group_count = df['年龄段'].value_counts()
print('按年龄段统计学生人数：')
print(age_group_count)

# 按地区（外省按省份，海南省按市县）统计学生人数
def extract_area(address):
    if '海南省' in address:
        return address.split('省')[1].split('市')[0].split('县')[0]
    else:
        return address.split('省')[0].split('市')[0]

df['地区分类'] = df['家庭地址'].apply(extract_area)
area_count = df['地区分类'].value_counts()
print('按地区统计学生人数：')
print(area_count)